Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Ne pas passer par la page /locale-choice pour choisir sa locale #459

Conversation

yannbertrand
Copy link
Member

@yannbertrand yannbertrand commented Jan 3, 2023

🎄 Problème

La page de sélection de locale est accessible via /locale-choice ce qu'on souhaite éviter, car ça nous oblige à devoir toujours le supporter à l'avenir. Cette page est d'ailleurs exposée sur pix.fr (alors qu'elle n'y sert à rien). Elle avait été ajoutée pour fonctionner avec le rootRedirect de nuxt-i18n mais cette piste a ensuite été abandonnée, ce n'est donc plus qu'un reliquat de cette lointaine époque.

On constate aussi que le $router.push ajoute une entrée dans l'historique de l'utilisateur, ce qui fait qu'on ne peut pas utiliser le bouton précédent du navigateur qui nous redirige automatiquement sur la page courante.

🎁 Proposition

Ayant maintenant une page index différente de la home des locales (locale-home), on peut directement y rendre le sélecteur de locale.

Le layout avait besoin d'être allégé car il se chargeait tout de même avant l'apparition de la page.

On remplace aussi le $router.push par un $router.replace` pour ne pas rentre inutilisable la navigation dans l'historique avec une boucle.

🌟 Remarques

Impact en perfs ?

🎅 Pour tester

Procédure à suivre :

  1. Vérifier que le fonctionnement des sites Pix Pro (.fr) et Pix Pro (.org) n'a pas été modifié
  2. Vérifier que le fonctionnement du site Pix Site (.fr) n'a pas été modifié
  3. Aller sur Pix Site (.org), peu importe la page, et supprimer le cookie locale qui pourrait être dans le navigateur
  4. Aller à la racine de Pix Site (.org) (en suivant les liens ci-dessous des applications déployées ou en entrant un URL manuellement dans la barre d'adresse du navigateur) et ne pas constater de redirection vers la page /locale-choice, on y choisit sa locale
  5. Cliquer sur le « bouton » d'une des 3 locales International Français, International English ou FWB. Constater une redirection vers la page de locale correspondante, respectivement /fr, /en-gb ou /fr-be. Constater dans le navigateur l'ajout d'un cookie locale ayant pour valeur l'identifiant de la locale sélectionnée, fr, en-gb ou fr-be
  6. Aller à la racine de Pix Site (.org) (en suivant les liens ci-dessous des applications déployées ou en entrant un URL manuellement dans la barre d'adresse du navigateur) et constater la redirection vers la page de locale correspondant à la locale précédemment sélectionnée
  7. Entrer manuellement dans la barre d'adresse du navigateur différents URL de pages de contenu existantes (XXX/fr-be/les-tests, /fr/pix-et-unesco, XXX/en-gb/the-tests, etc. etc.) et constater qu'aucune redirection n'a lieu
  8. Constater que le bouton "précédent" du navigateur redirige correctement
  9. Reprendre la procédure au numéro 3. en choisissant une locale différente
  10. Reprendre la procédure au numéro 3. en activant son cache navigateur

@yannbertrand yannbertrand self-assigned this Jan 3, 2023
@pix-service
Copy link

Une fois les applications déployées, elles seront accessibles via les liens suivants :

Les variables d'environnement seront accessibles ici.

pages/pix-site/index.vue Outdated Show resolved Hide resolved
@yannbertrand yannbertrand force-pushed the pix-6506-save-locale-preferences-without-locale-choice-page branch from 2156f9c to f1fdd5c Compare January 3, 2023 17:45
@yannbertrand yannbertrand force-pushed the pix-6506-save-locale-preferences branch 5 times, most recently from f6ed61e to 25ac905 Compare January 4, 2023 13:20
@VincentHardouin VincentHardouin force-pushed the pix-6506-save-locale-preferences branch from 44be081 to 52975b4 Compare January 5, 2023 10:32
@reibecca reibecca force-pushed the pix-6506-save-locale-preferences branch 4 times, most recently from ddd6d3a to 38a4fe3 Compare January 5, 2023 16:58
@VincentHardouin VincentHardouin force-pushed the pix-6506-save-locale-preferences branch from 38a4fe3 to b96a3f1 Compare January 6, 2023 10:05
Base automatically changed from pix-6506-save-locale-preferences to dev January 6, 2023 10:21
@yannbertrand yannbertrand force-pushed the pix-6506-save-locale-preferences-without-locale-choice-page branch from f1fdd5c to c35a05e Compare January 6, 2023 10:44
@VincentHardouin VincentHardouin force-pushed the pix-6506-save-locale-preferences-without-locale-choice-page branch from 83701ae to 6a9e0cc Compare January 6, 2023 11:16
@yannbertrand yannbertrand force-pushed the pix-6506-save-locale-preferences-without-locale-choice-page branch from 6a9e0cc to bf15969 Compare January 6, 2023 13:23
@yannbertrand yannbertrand changed the title Ne pas passer par la page /locale-choice [FEATURE] Ne pas passer par la page /locale-choice pour choisir sa locale Jan 6, 2023
@yannbertrand yannbertrand force-pushed the pix-6506-save-locale-preferences-without-locale-choice-page branch 2 times, most recently from 6457cc1 to eb48807 Compare January 6, 2023 13:30
@yannbertrand yannbertrand marked this pull request as ready for review January 6, 2023 13:30
@yannbertrand yannbertrand force-pushed the pix-6506-save-locale-preferences-without-locale-choice-page branch from eb48807 to 7daee2b Compare January 6, 2023 13:46
@yannbertrand
Copy link
Member Author

Détecté à ce moment mais était déjà le cas depuis la #455, le stockage de préférence "International FR" ne fonctionne pas sur la home (seulement cette locale) car elle correspond à la defaultLocale, donc le i18.onBeforeLanguageSwitch n'est pas trigger. Une autre PR viendra corriger ça.

Sinon fonctionnellement, c'est ✅

@pix-service-auto-merge pix-service-auto-merge merged commit 7dc9a3d into dev Jan 6, 2023
@pix-service-auto-merge pix-service-auto-merge deleted the pix-6506-save-locale-preferences-without-locale-choice-page branch January 6, 2023 15:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants